草庐IT

Java Class.isAssignableFrom 困惑

全部标签

go - 对潜在变量范围(也许是指针)的困惑?不确定

我尝试寻找答案(我觉得这是一个基本概念),但找不到与我的直接相关的答案...所以这是我的帖子。我目前正在从我的服务器上解析日志文件并构建一个脚本来自动执行某些过程(学习新技能,让我的工作更轻松等)。我构建了一个简化的解析器来分解每一行。我省略了相当多的代码,因为它们不相关。这是我的功能:varparsedDataSet=make(map[int][]string)funcparseData(dataSet[]string){vartempArray[]stringforindex,element:=rangedataSet{tempData:=strings.Fields(elemen

go - 对如何从源代码构建一个 go 项目感到困惑

我正在尝试构建以太坊节点Geth:https://github.com/ethereum/go-ethereum我将项目克隆到我的src文件夹中(在一个名为geth的文件夹中,不应该是metter,对吧?),当我尝试运行/编译时找不到:"github.com/ethereum/go-ethereum/accounts""github.com/ethereum/go-ethereum/accounts/keystore""github.com/ethereum/go-ethereum/cmd/utils"目前这些文件存在,作为我正在尝试编译的项目的一部分,所以我实际上不明白为什么要在线引

go - 关于接口(interface)分配的困惑

这个问题在这里已经有了答案:MethodSets(PointervsValueReceiver)(3个答案)关闭3年前。我对下面的Go代码很困惑。谁能告诉我为什么worker=u和work=&u是否有效?worker=p有效吗?worker=&p无效?User和People有什么区别?packagemainimport("fmt")typeWorkerinterface{Work()}typeUserstruct{namestring}func(uUser)Work(){}typePeoplestruct{namestring}func(p*People)Work(){}funcmai

go - 我是否对 "How to Write Go Code"示例中 Go 工作区中的 git 存储库结构感到困惑?

我对HowtoWriteGoCode有两点困惑文章。它们可能是文章中的错误,或者我可能只是忽略了重点。在描述典型工作区的结构时,文章说Thesrcsubdirectorytypicallycontainsmultipleversioncontrolrepositories(suchasforGitorMercurial)thattrackthedevelopmentofoneormoresourcepackages.文章中的第一个示例工作区与此描述相匹配,有2个文件夹代表存储库(github.com/golang/example/和golang.org/x/image/),每一个在其正

go - 关于 Golang 中 lambda 函数/闭包的一些困惑

packagemainimport("fmt")funcmain(){f,val,val1:=fibonacci()fmt.Println(val,val1)fori:=0;iHereismycodeonslovingfibonacciwithoutusingrecursionwhenIreadaboutlambdafunction/closure.AndtheGoDocumentarysaysaclosurewillcapturesomeexternalstate.Myunderstandingistheclosurewillkeepacopyofstateofthefunction

go - 对 golang 项目布局 repo 在实践中的工作方式感到困惑

本题引用热门project-layout.这只是一种布局代码的方式,但二进制文件的实际编译将在/cmd/app1//cmd/app2/所以如果我有一个网站,它仍然会被认为是一个cmd应用程序,它只会启动http监听器等。或者整个布局中是否有多个“入口”点,而不仅仅是在cmd文件夹中?您将如何使用此布局实际构建和运行您的应用程序?(或者其中之一,因为据我所知它支持多个)是不是这样:去构建cmd/app1/*.go? 最佳答案 你可以gobuild./cmd/app/例如我有这个模块├──cmd│  ├──cli│  │  └──mai

go - 被嵌入在golang结构中的接口(interface)所困惑

像这里的代码,当把一个接口(interface)A嵌入到结构体B中,然后将A设置为aa,aa是AA的一个实例。B和AA都有元素X,当调用b.X时我刚得到B.X。我怎样才能得到b.AA.X?我知道这个语法是有线的,但我只是想弄清楚varb是如何存储在内存中的,我尝试了一些不安全的语法,没办法得到b.A.X.:packagemainimport("fmt""unsafe")typeAinterface{Hello()string}typeBstruct{AXstring}typeAAstruct{numintXstring}func(aaAA)Hello()string{returnfmt

Go语言语法困惑

所以我是Go的新手,我正在从并发的pythonb/c迁移过来。不管怎样,我在看net/httppackagedocumentation并偶然发现了这个:client:=&http.Client{CheckRedirect:redirectPolicyFunc}所以我看到我们正在通过引用原始Client结构来创建一个client变量(我想这就是你会怎么说的)但是我完全迷失了CheckRedirect:redirectPolicyFunc“:”到底是什么意思,我们用它做什么?还有它前后的东西是什么?我阅读了struct文档并介绍了gotutorial,但我什么也没看到,我可能看得不够仔细。

go - 对为什么这个 cgo 代码 panic 感到困惑

我想写一个使用golang调用c函数的demo,写了这个文件,发现会出现panic,不知道为什么。首先是一个c头文件p.h:voidoutput(char*str,ints);voidcc(char*str);二、一个c文件p.c:#include#include#includevoidoutput(char*str,ints){fflush(stdout);sleep(s);printf("%s",str);}voidcc(char*str){printf("%s",c_ccB(str));}很简单,go代码一个output函数,go代码一个cc函数调用c_ccB,最后一个go代码文

github - 困惑 : GitHub Project broken(? ), 指令不明确 : Mercurial setup(? )

首先,我从来没有用github做过什么,这是我第一次尝试,所以请有礼貌地帮助我上车。我想使用这个github项目:https://github.com/jmmcatee/cracklord完全是go语言。来自说明:如果你想从源代码构建东西,首先需要你有一个带有GOPATH设置的工作Go构建环境。此外,您可能需要Git和Mercurial设置来收集我们在代码中使用的各种库和插件。这是我的问题:我已经完成了git的安装,并且能够克隆repro,效果很好。我已经安装了mercurial,但不知道如何“设置”mercurial。有人可以解释一下mercurialsetup与这个githubpr